package com.itheima.HashSet;

import java.util.Collections;
import java.util.HashSet;
import java.util.Iterator;

public class HashSetDemo2 {
    public static void main(String[] args) {
        HashSet<Student>hs=new HashSet<>();
        Student s1=new Student("xiaozhi",23);
        Student s2=new Student("xiaozhi",23);
        Student s3=new Student("xiaoming",23);
        Student s4=new Student("xiaoming",22);
        Student s5=new Student("xiaoming",23);
      Collections.addAll(hs,s1,s2,s3,s4,s5);
    //    Iterator it=hs.iterator();

        for (Student h : hs) {
            System.out.println(h);
        }

        //因为再Object类中，是根据对象的地址值计算出来的哈希值
        //如果希望获取到的哈希值是根据属性值计算的，那么我们小于重写hashCode方法
   //     System.out.println(s1.hashCode());//Student没有重写hashCode打印的地址值是：1163157884。  重写后一致：265724891
     //   System.out.println(s2.hashCode());//Student没有重写hashCode打印的地址值是：1956725890    重写后一致：265724891








    }
}
